DynamoDB তে Data Expiration এবং Management অত্যন্ত গুরুত্বপূর্ণ বিষয়, বিশেষ করে যখন আপনার অ্যাপ্লিকেশনে বড় ধরনের ডেটা স্টোরেজ বা বড় পরিসরে ডেটা প্রবাহ রয়েছে। DynamoDB ডেটাবেসে সঠিকভাবে ডেটা ম্যানেজমেন্ট এবং এক্সপিরেশন নিশ্চিত করতে হলে আপনাকে কিছু কার্যকরী কৌশল এবং বৈশিষ্ট্য ব্যবহার করতে হবে, যেমন Time to Live (TTL) এবং auto-scaling।
এখানে আমরা DynamoDB তে Data Expiration এবং Management সম্পর্কে বিস্তারিত আলোচনা করব।
Time to Live (TTL) হল একটি গুরুত্বপূর্ণ ফিচার যা আপনাকে DynamoDB টেবিলের ডেটার জন্য একটি নির্দিষ্ট সময়সীমা নির্ধারণ করতে সাহায্য করে। এই সময়সীমার পর ডেটাটি অটোমেটিকভাবে মুছে যাবে। এটি বিশেষভাবে উপকারী যখন আপনি শুধুমাত্র নির্দিষ্ট সময় পর্যন্ত কার্যকরী ডেটা রাখতে চান, যেমন সেশন ডেটা, অস্থায়ী ক্যাশ, বা অর্পিত ট্রানজেকশন।
TTL সক্রিয় করলে, নির্দিষ্ট সময়ে ডেটা মুছে ফেলা হয়, এবং এটি পরিচালনা করা সহজ হয়।
expirationTime
নামক একটি অ্যাট্রিবিউট ব্যবহার করে নির্দিষ্ট সময় পর ডেটা মুছে ফেলার জন্য সেট করতে পারেন।CLI Example:
aws dynamodb update-table \
--table-name YourTableName \
--time-to-live-specification "Enabled=true,AttributeName=expirationTime"
Data Insertion with TTL Attribute: যখন আপনি নতুন ডেটা ইনসার্ট করবেন, তখন আপনাকে একটি expirationTime
অ্যাট্রিবিউট যোগ করতে হবে যা Unix টাইমস্ট্যাম্প হিসেবে নির্দিষ্ট করবে কখন ডেটাটি মুছে যাবে।
{
"UserID": {"S": "user123"},
"Name": {"S": "John Doe"},
"expirationTime": {"N": "1657160123"} // Unix timestamp for expiration
}
Auto-scaling DynamoDB এ একটি শক্তিশালী বৈশিষ্ট্য যা আপনাকে টেবিলের রিড এবং রাইট ক্যাপাসিটি স্বয়ংক্রিয়ভাবে বাড়ানোর এবং কমানোর অনুমতি দেয়। এটি বিশেষভাবে গুরুত্বপূর্ণ যখন আপনার অ্যাপ্লিকেশন একসাথে অনেক রিকোয়েস্ট প্রক্রিয়া করে, এবং আপনাকে অটোমেটিক স্কেলিং সেট আপ করতে হয় যাতে নির্দিষ্ট সীমার মধ্যে থাকতে পারে।
Auto-scaling কনফিগার করতে, আপনি নিম্নলিখিত ধাপগুলো অনুসরণ করতে পারেন:
CLI Example for Auto-scaling Configuration:
aws dynamodb update-table \
--table-name YourTableName \
--provisioned-throughput "ReadCapacityUnits=5,WriteCapacityUnits=5" \
--auto-scaling-target-scaling-policy "TargetTrackingScalingPolicy"
Target Utilization
সেট করতে পারেন।আপনি যদি পুরনো ডেটা আর্কাইভ করতে চান, তাহলে আপনি DynamoDB Streams ব্যবহার করে ডেটা পরিবর্তন ট্র্যাক করতে পারেন এবং সেই ডেটাগুলিকে আরেকটি সস্তা স্টোরেজে (যেমন S3) স্থানান্তর করতে পারেন। পরে, আপনি এই আর্কাইভ ডেটা থেকে মুছে ফেলতে পারবেন DynamoDB এর টেবিল থেকে, যখন এগুলি আর প্রয়োজনীয় না থাকে।
Data Expiration এবং Management DynamoDB তে অত্যন্ত গুরুত্বপূর্ণ, বিশেষ করে যখন আপনার টেবিলে সময়ভিত্তিক ডেটা পরিচালনা করতে হয়। TTL ফিচারটি আপনাকে নির্দিষ্ট সময় পর ডেটা অটোমেটিকভাবে মুছে ফেলতে সাহায্য করে, আর auto-scaling টেবিলের ক্যাপাসিটি অনুযায়ী স্বয়ংক্রিয়ভাবে রিড এবং রাইট পারফরম্যান্স সমন্বয় করতে সাহায্য করে।
এই ফিচারগুলি ব্যবহার করে আপনি আপনার ডেটাবেসের পারফরম্যান্স এবং কস্ট-এফিশিয়েন্সি নিশ্চিত করতে পারবেন।
common.read_more